/**
* Created with CLion.
* User:Lenovo
* Date:2023-05-18
* Time:16:39
* Description:队列
*/

#include "Queue.h"

void TestQueue1()
{
    Queue q;
    QueueInit(&q);

    QueuePush(&q, 1);
    QueuePush(&q, 2);
    QueuePush(&q, 3);
    QueuePush(&q, 4);

    printf("%d\n", QueueSize(&q));

    while (!QueueEmpty(&q))
    {
        printf("%d ", QueueFront(&q));
        QueuePop(&q);
    }
    printf("\n");

    QueueDestroy(&q);
}

int main()
{
    // 队列：只允许在一段进行插入数据操作，在另一端进行删除数据操作的特殊线性表
    // 特性：先进先出
    // 入队：进行插入操作的一端称作队尾
    // 出队：进行删除操作的一端称为队头
    // 实现：数组队列，链式队列

    TestQueue1();

    return 0;
}